1. Field of the Invention
The present disclosure pertains to motion estimation methods suitable for processing a sequence of images provided, directly or indirectly, by a moving-image sensor, so as for example to detect the motion of an entity provided with this image sensor.
An embodiment of the present invention is especially suitable for an optical mouse linked to a computer in IT systems.
2. Description of the Related Art
Such image processing is aimed at detecting motions of the mouse so as to retranscribe them into the form of a cursor motion on a computer screen. The motion of the optical mouse is generally detected on the basis of information sensed by a video sensor or some other type of sensor which is fixed on the optical mouse.
Such sensors provide a digital signal in the form of a sequence of images sensed during the movement of the mouse. This digital signal is then processed so as to deduce therefrom the motion of the mouse.
Generally, the mouse is moved over a suitable surface and the video sensor fixed on the mouse captures images of this surface during its movement. The movement of the mouse may then be reconstructed on the basis of the relative positions of objects in the successive captured images. Thus, on the basis of this movement is deduced the movement which may be given to the cursor representing the motion of the mouse on the screen of the computer.
Certain image processing of this type turns out to be complex. It may in fact require powerful calculations which may be expensive in terms of time and/or calculation capacity, and energy consumption, also raising problems of heat dissipation.
In order to render the display of the cursor of the optical mouse more easily achievable, it is advantageous to apply a method of motion estimation.
Such a method facilitates estimating the motion of a block of pixels between two images which follow one another.
Certain methods of this type are used in another technical field, namely video stream compression. A procedure described in the document ‘Complexity Comparison of fast block-matching estimation algorithms’ by Yilong Liu and Soontorn Oraintara is in particular known.
In the field of the detection of movement of an entity, these methods are based on an association of a motion vector with each of the images processed. Such a vector has a vertical component and a horizontal component. It represents the motion of the mouse from one image to the next.
Thus, in such a context, the motion of all the pixels of each image to be processed may be represented by a single motion vector.
This type of device is often subject to specific technical constraints, such as in particular a time constraint. Specifically, the processing of such images often must be performed in a very short time so that the motion of the mouse can be retranscribed onto the screen of the computer in a manner which is almost instantaneous for the user. Another frequent significant constraint of this type of device is the cost of production.
FIGS. 1-A and 1-B illustrate a definition of a motion vector. In FIG. 1-A, a sequence of two images is represented, a first image 101 is followed by a second image 102. The detection of movement of the mouse is based on the relative position of markers included in the various images sensed. The image 101 comprises a marker in position 103 and the image 102 comprises the same marker in position 104. Thus, the movement of the optical mouse may be deduced from its position with respect to this marker.
In FIG. 1-B, the images 101 and 102 are superimposed in such a way that the respective positions of the marker coincide. The motion vector corresponding to the movement of the mouse in this context is represented by the arrow 105. Its components along the horizontal and along the vertical are dubbed X and Y. Thus, the motion of the mouse between the image 101 and the image 102 may be represented subsequently by the motion vector 105. The motion vector 105 which makes it possible to retrieve the position of the mouse in the next image 102 may thus be associated with the image 101.
Estimation of the associated motion of the mouse in a current image, that is to say one which is currently being processed, is generally based on motion vectors previously associated with previous processed images in the sequence of images sensed by the mouse. Then, on the basis of such motion vectors, candidate vectors are generated, that is to say vectors which are apt to represent the motion of the mouse between two successive processed images. Next, relative to these candidate vectors, correlation calculations relating to the position of the mouse are performed, examples of which are well known to the person skilled in the art. The candidate vector for which the largest correlation is calculated is then selected. This vector is then associated with the current image.
The term “processed image” refers to images with which a motion vector has been associated.
It should be noted that, in this type of method, if it turns out that the candidate vectors are not relevant, and nevertheless that which exhibits the best correlation is associated with the current image, such a system may diverge. Thus, a divergence often occurs in the event of abrupt motion of the mouse.
Consequently, the performance of devices applying a motion estimation method is greatly dependent on the quality of the candidate vectors. It is therefore desirable to employ a procedure for generating candidate vectors and for selecting a motion vector to be associated with an image, which is effective and accurate.